To exchange objects between object oriented environments, such as Java, C++ and the like, and non-object-oriented environments such as NetView, z/OS batch programs, z/OS REXX programs, some scripting languages and the like is a key requirement for system automation technology within multi-platform networks. An example for a component within a multi-platform network that requires to exchange objects between object oriented environments and non-object-oriented environments is an end-to-end adapter for z/OS.
To exchange objects within object oriented environments it is known to use an Extended Markup Language (XML) serialization by using a XML encoder and a XML decoder. To exchange objects between object-oriented and non-object-oriented environments, the latter requires an XML parser. Thereby the problem arises that many non-object-oriented environments do not offer XML parsers. Furthermore XML parsers are very complex. So it would be very costly to port an existing XML parser, like e.g. an existing C/C++ parser into a non-object-oriented environment, like e.g. NetView. Additionally, a ported XML parser within a non-object-oriented environment would provide only bad performance, since for example C-performance is poor within NetView.
Furthermore, a XML parser works with uncompressed data only. Thereby a data stream being used to exchange objects between object-oriented and non-object-oriented environments cannot be compressed or has to be decompressed before being processed within the XML parser. This requires memory resources and due to this is also costly.
From U.S. Pat. No. 6,035,303 it is known to store and retrieve complex objects within a digital library by converting the objects into key-value-pairs. Thereby additional information is assigned to the key-value-pairs to retrieve them within the library. Doing so, it is possible to make objects persistent.